<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
      //    正则相关方法 ：一、正则方法（正则下面的方法） 二.字符串方法（字符串中和正则相关的方法）
      // 一、正则方法
      // 1.test 检测是否存在该字符或者是否符合
      // var reg = /\d+/;
      // var str = "fdasfd45fdsaf";
      // console.log( reg.test(str));

      // 2.exec ： 捕获符合匹配规则的字符；
      // 捕获可以把匹配的内容获取到；
      // var reg = /\d+/;
      // var str = "fdaf1111dasfd2222fdaf3333ds";
      // console.log(reg.exec(str));

      // exec 默认是惰性匹配
      // var reg = /\d+/;
      // var str = "fdaf1111dasfd2222fdaf3333ds";
      // console.log(reg.exec(str));
      // console.log(reg.exec(str));
      // console.log(reg.exec(str));

      // exec可以支持 全局匹配
      // 全局匹配 需要在正则后面给 g 修饰符 ；
      // var reg = /\d+/g
      // var str = "fdaf1111dasfd2222fdaf3333ds";
      // console.log(reg.exec(str));
      // console.log(reg.exec(str));
      // console.log(reg.exec(str));
      // console.log(reg.exec(str));

      // 修饰符 g ：全局匹配    i ： 忽略正则的大小写；
      // var reg = /abc/gi;
      // var str = "kjkljAbcfdaf";
      // if(reg.test(str)){
      //     console.log("有abc");
      // }else{
      //     console.log("没有abc");
      // }

      // 总结： 正则方法  test  exec  2种修饰符  g 全局匹配  i 忽略大小写；

      // 二、字符串和正则相关方法 （是字符串方法）;
      // 1.split(); 截取
      // var str = "a-b-c-d";
      // var arr = str.split("-");
      // console.log(arr);
      // var str = "fdsaf432fdafdsa324dfa43fdsaf";
      // var reg = /\d+/;
      // var arr =  str.split(reg);
      // // var arr = reg.split(str);  // 错误的
      // console.log(arr);

      // 2.search 查找 ,如果找到 返还 符合规则的索引值 ，如果没有找到返还 -1；
      // var str = "fdaf213fdafd";
      // var reg = /\d+/;
      // var res =  str.search(reg);
      // console.log(res);

      // 3.replace: 替换字符
      // var str = "fdsaf@qq.com";
      // // @ ----> at
      // var res =  str.replace("@","at");
      // console.log(res);

      // var str = "fdsaf213fda21321fdaf";
      // var reg = /\d+/g;
      // var res = str.replace(reg,"-");
      // console.log(res);

      // 敏感词过滤 ；
      var str = "dfsafdsaSMfdaSMfdafdXXXfdaf";
      // 替换  sm  和 xxx 换成 *;
      var reg = /(sm)|(xxx)/gi;
      //  var res = str.replace(reg,"**");
      var res = str.replace(reg, function (item) {
        console.log(item);
        return "*".repeat(item.length);
      });
      console.log(res);
    </script>
  </body>
</html>
